package inventario.code;


/**
 * Projeto Laboratorio de Programacao II
 * 
 * Interface Pessoa
 * 
 * Cria os contratos que a classe implementadora devera seguir.
 * 
 * @authors : Pedro Augusto, Rafael Ribeiro, Talita Lobo
 * 
 */


public interface Pessoa {        
	
        /**
         * Recupera o Nome de Pessoa.
         * 
         * @return nome
         *               O nome de Pessoa
         */
        public String getNome();

        /**
         * Muda o Nome de Pessoa
         * 
         * @param nome
         *            Novo nome de pessoa
         */
        public void setNome(String nome);

        /**
         * Recupera o Email de Pessoa
         * 
         * @return email
         *               O email de Pessoa
         */
        public String getEmail();
        /**
         * Modifica o Email de Pessoa.
         * 
         * @param email
         *            Novo email de pessoa
         */
        public void setEmail(String email);

        /**
         * 
         * Recupera todas as  Informacoes sobre Pessoa
         * 
         * @return
         *              Todas Informacoes de Pessoa.
         */
        @Override
        public String toString();

        /**
         * Dado um Objeto, Verifica Igualdade com Pessoa.
         * 
         * @return
         *              true caso o objeto seja igual a Pessoa, false caso contrario.
         */
        @Override
        public boolean equals(Object objeto);
}